package com.sg.dto.base.app.req;

import com.sg.common.dto.BaseDto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;

/**
 * @desc BatchQueryWorkTaskReq
 * @使用场景
 */
@Data
public class BatchQueryWorkTaskReq extends BaseDto implements Serializable {

    @ApiModelProperty("任务列表 ")
    List<String> taskDataList = new ArrayList<>();

    /**
     * 任务类型 ROUTINE_TASK:常规任务 PROJECT_TASK:项目任务 TEMPORARY_TASK:临时任务 PROBLEM_TASK:问题任务
     */
    @ApiModelProperty("任务类型")
    private String taskType;

    /**
     * 是否对齐 TRUE:是 FALSE:否
     */
    @ApiModelProperty("是否对齐")
    private String isAlignment;

    /**
     * 内容冗余状态 EDITING:草稿 TOBESIGN:待签收 ONGOING:进行中 FAILED:已失败 OVERDUE:逾期任务 NOT_AT_THE:未开始 UNCOMPLETED:未完成 COMPLETED:已完成 UNREPORTED:待汇报 EVA:评价中 AUDIT:审核中 EXPIRED:已逾期 SUCCESS:已成功 ENDED:已结束 UNLIMITED:不限 TOBEFILL:待填报 TOBEEVA:待评价
     */
    @ApiModelProperty("内容冗余状态")
    private String stateCode;

    /**
     * 任务进展状态 NOT_AT_THE:未开始 ONGOING:进行中 HAS_ENDED:已结束
     */
    @ApiModelProperty("任务进展状态")
    private String taskStatus;

    /**
     * 主题内容ID
     */
    @ApiModelProperty("主题内容ID")
    private String themeContentId;

    /**
     * 创建于空间ID
     */
    @ApiModelProperty("创建于空间ID")
    private String spaceId;

    /**
     * 主体生命周期 CURRENTLY_VALID:当前有效 EDITING:正在编辑 ARCHIVING:历史存档
     */
    @ApiModelProperty("主体生命周期")
    private String subjectLifeCycle;

    /**
     * 创建时间
     */
    @ApiModelProperty("创建时间")
    private Date createTime;

    /**
     * 计划开始时间
     */
    @ApiModelProperty("计划开始时间")
    private Date planStartTime;

}
